package cn.shadow.game.chess;

import io.netty.buffer.ByteBuf;

import java.util.Map;

public interface ChessGame extends Observable {
    String getGameId();

    void reset();

    void init();

    void setGameId(String id);

    void putChessPosition(int x, int y);

    Map<Long, ChessPlayer> getPlayers();

    Map<Long, Observer> getViewers();

    void addPlayer(ChessPlayer... player);

    void sendPlayerMsg(ByteBuf myMessage);

    void sendInitMsg();

    void sendStepMsg();

    void doWhenFinish();
}